1. Field of the Invention
The present invention relates to an image recognition apparatus for comparing an unknown image (i.e., an input image) such as a character or any other graphic pattern with a large number of reference images and for identifying the input image according to comparison results, the image recognition apparatus being suitable for an OCR (Optical Character Reader).
2. Description of the Prior Art
Generally, in artificial character recognition, images subjected to recognition are characters and other graphic patterns. These images include various types of patterns. For example, characters as images to be recognized include various types of patterns such as Japanese hiragana characters, Japanese katakana characters, Chinese characters, alphabets and figures. In addition, these characters include handwritten characters having irregular styles of penmanship as well as printed characters having regular styles of penmanship, thereby being rich in diversity.
More specifically, in case of Japanese hiragana characters or the like, the number of character is small, and their patterns are relatively simple. However, Japanese hiragana characters include many curved portions and are not suitably recognized in artificial character recognition. Further, referring to Chinese character, each Chinese character has a complicated pattern and the number of Chinese characters for daily use is about 2,000. Besides, the forms of printed Chinese characters include a variety of types such as a Gothic type and a Ming type. Moreover, in recent years, the development of a phototype setting technique allows easy printing of various kinds of types. Therefore, a variety of character forms is increasing. Furthermore, in order to recognize graphic patterns in maps and design drawings in addition to the characters, objects subjected to recognition generally vary.
In order to artificially recognize images having various patterns, preprocessing, class classification (i.e., rough classification), and similarity discrimination are required. Preprocessing is performed for image signals derived from an input image. In class classification, features of the input image are extracted on the basis of the image signals obtained by preprocessing, and a class to which the input image belongs must be determined. In similarity discrimination, correlation calculations such as pattern matching must be performed between the classified input image and reference images belonging to this class, thereby recognizing the input image. Since input images have a variety of patterns as described above, class classification and similarity discrimination are most important in image recognition.
A conventional image recognition apparatus for class classification and similarity discrimination depends on digital processing using primarily an electronic technique. Conventional image recognition techniques will be generally described below.
An input image picked up by an image sensor is subjected to preprocessing such as digital conversion, noise reduction and distortion correction. The preprocessed image is temporarily stored in a memory and then subjected to processing such as normalization for positions, directions, line widths and the like, and classification of the kind of image.
In order to extract features, for example, the memory is addressed as needed to perform serial projection in a large number of axes, thereby extracting global features of the input image. In feature extraction, in order to increase the throughput, it is important to extract effective features even if the number of features to be extracted is small. For this purpose, various types of algorithms are employed to perform feature extraction for a short period of time. The obtained feature data is compared with reference image data stored in a class classification dictionary to discriminate a class to which the input image belongs. This process aims at only class classification, and thus information for ordering candidates of reference characters for recognition cannot be obtained.
After the input image is classified, the input image is pattern-matched with all reference images belonging to this classification and among the reference images stored in the recognition dictionary so as to identify the input image with a given reference image or determine the degree of similarity therebetween. Similarity discrimination based on pattern matching is the basis for correlation calculations. More specifically, correlation functions between the input image and the reference images are sequentially calculated by data processing. The resultant correlation functions are compared with each other to discriminate the degree of similarity between the input image and the reference images.
A large number of correlation calculations are required in digital processing. Therefore, a special machine incorporating a recognition algorithm is developed and used in practice in order to increase the throughput. Parallel calculations are primarily performed in this special machine. However, the calculations are performed by digital processing. The range of objects subjected to correlation calculations is limited to obtain correlation functions and discriminate the degree of similarity due to time limitations.
Furthermore, in the above special machine, in order to achieve a high throughput or the like, a recognition algorithm has been improved, and an architecture of the special machine including a special LSI has been developed.
In the conventional techniques described above, however, the following problems are presented.
In each processing of class classification and similarity discrimination of the input image, the input image data stored in the memory are sequentially addressed to perform time-serial digital processing, thus prolonging the processing time. In particular, in the time-consuming similarity discrimination process, if the special machine incorporating the above-mentioned special algorithm is used, the total processing time can be shortened. However, even the special machine is primarily operated by digital processing. As a result, a satisfactory solution for the above problems cannot be proposed.
When the special machine is used, since the special architectural design is required to incorporate the special algorithm in the machine, there is a problem that machine cost comes to be high. In addition, since a large number of calculations are required in correlation calculations, the range of objects subjected to correlation calculations must be limited due to time limitations even if the special machine is used, thereby causing another problem that precision of similarity discrimination is decreased. If current circumstances are taken into consideration wherein pattern matching is performed by a single-stage correlation calculation unit, the precision of similarity discrimination is further decreased.
The decrease of precision of similarity discrimination causes a decrease in recognition rate of the apparatus together with a tendency for extracting particular features due to difficulty in digital processing of extracting nonlinear features (e.g., circumferential and radial projections) in class classifications.